﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace iBankCliente.Logica
{
   public  class Tarjeta
    {
        private string numero;
        private List<Cuenta> listaCuentas;
        private string clave;

        //---------------------Getters & Setters-------------------------------//
        public string Numero
        {
            get { return numero; }
            set { numero = value; }
        }

        public List<Cuenta> ListaCuentas
        {
            get { return listaCuentas; }
            set { listaCuentas = value; }
        }
        
        public string Clave
        {
            get { return clave; }
            set { clave = value; }
        }
        //---------------------------------------------------------------------//
        public static Tarjeta buscarTarjeta(string numero, List<Persona> listaPersonas)
        {
            foreach (Persona each in listaPersonas)
            {
                foreach (Tarjeta tarjeta in each.ListaTarjetas)
                {
                        if (numero.Equals(tarjeta.Numero))
                            return tarjeta;
                }
            }

            return null;
        }

        //Metodo que devuelve la lista raiz con la tarjeta con nueva clave
        public static List<Persona> cambioClave(string numero, string clave, List<Persona> listaPersonas)
        {
            foreach (Persona each in listaPersonas)
            {
                foreach (Tarjeta tarjeta in each.ListaTarjetas)
                {
                    if (numero.Equals(tarjeta.Numero))
                    {
                        tarjeta.Clave = clave;
                        return listaPersonas;
                    }
                }
            }

            return null;
        }

    }
}
